---
id: 65688f737b0ef396bf0c22d6
title: الخطوة 5
challengeType: 20
dashedName: step-5
---

# --description--

Now you will move to the actual construction of the board, which is a 9x9 grid.

The input puzzle would look like this:

```py
puzzle = [
  [0, 0, 2, 0, 0, 8, 0, 0, 0],
  [0, 0, 0, 0, 0, 3, 7, 6, 2],
  [4, 3, 0, 0, 0, 0, 8, 0, 0],
  [0, 5, 0, 0, 3, 0, 0, 9, 0],
  [0, 4, 0, 0, 0, 0, 0, 2, 6],
  [0, 0, 0, 4, 6, 7, 0, 0, 0],
  [0, 8, 6, 7, 0, 4, 0, 0, 0],
  [0, 0, 0, 5, 1, 9, 0, 0, 8],
  [1, 7, 0, 0, 0, 6, 0, 0, 5]
]
```

The resulting grid would look like this:

<img class="img-responsive" alt="a board of sudoku" src="https://cdn.freecodecamp.org/curriculum/python/sample-board.png" style="background-color: white; height:300px; width:300px; padding: 10px;" />


Define a method `__str__` within the `Board` class. Also, add the `self` parameter. This method is automatically called when you use the `str()` function on an instance of the class or when you use `print()` with the object.

# --hints--

Your method should be named `__str__`.

```js
assert.match(code, /def\s+__str__\s*\(/);
```

You should add the parameter `self` to the method.

```js
assert.match(code, /def\s+__str__\s*\(\s*self\s*\)\s*:/);
```

# --seed--

## --seed-contents--

```py
class Board:
    def __init__(self, board):
        self.board = board
--fcc-editable-region--

--fcc-editable-region--
```
